home *** CD-ROM | disk | FTP | other *** search
Modula Definition | 1995-03-02 | 1.2 KB | 38 lines | [TEXT/3PRM] |
- definition module menuDef;
-
- // Version 0.8 to 1.0
-
- //
- // MenuDefinitions:
- //
-
-
- import commonDef;
-
-
- :: MenuDef *s *io
- = PullDownMenu MenuId MenuTitle SelectState [MenuElement s io];
- :: MenuElement *s *io
- = MenuItem MenuItemId ItemTitle KeyShortcut SelectState (MenuFunction s io)
- | CheckMenuItem MenuItemId ItemTitle KeyShortcut SelectState MarkState (MenuFunction s io)
- | SubMenuItem MenuId ItemTitle SelectState [MenuElement s io]
- | MenuItemGroup MenuItemGroupId [MenuElement s io]
- | MenuRadioItems MenuItemId [RadioElement s io]
- | MenuSeparator;
- :: RadioElement *s *io
- = MenuRadioItem MenuItemId ItemTitle KeyShortcut SelectState (MenuFunction s io);
- :: MenuFunction *s *io
- :== s -> *(io -> (s, io));
- :: MenuId :== Int;
- :: MenuTitle :== String;
- :: MenuItemId :== Int;
- :: MenuItemGroupId :== Int;
- :: KeyShortcut = Key KeyCode | NoKey;
-
-
- MenuDef_MenuId :: !(MenuDef s io) -> MenuId;
- MenuDef_SelectState :: !(MenuDef s io) -> SelectState;
- MenuDef_Elements :: !(MenuDef s io) -> [MenuElement s io];
- MenuDef_SetAbility :: !(MenuDef s io) !SelectState -> MenuDef s io;
- MenuDef_ReplaceElements :: !(MenuDef s io) ![MenuElement s io] -> MenuDef s io;
-